1. Field of Invention
The invention relates to modem signal transport, and particularly to high-speed transport of low latency signals.
2. Description of Related Art
Often when computers are at remote locations with respect to one another, modems are commonly used to transport signals between computers. However, in order to effectively communicate, modems, like humans, must speak the same language. Such language is known as a protocol. If a sending modem uses a different protocol from a receiving modem, the modems are incompatible and cannot communicate with one another. One of the most commonly used protocols is the V.42 recommendation (also referred to herein as the V.42 protocol), which has been adopted by several modem industry groups, particularly the International Telecommunications Union (ITU), formerly the Consultative Committee in International Telegraphy and Telephony (CCITT), to permit the development of compatible error-correcting modems. Other protocols have also been adopted by the ITU, particularly, protocols for non-error-correcting modems.
As suggested above, modems can generally be described as falling into one of two categories, error-correcting and non-error-correcting. Error-correcting modems are advantageous over non-error-correcting modems in that error-correcting modems filter out many errors on an incoming signal, which are often due to noise or other problems.
Generally, in the operation of an error-correcting modem, data received by a modem from a host system passes through a host system interface and is placed in a transmit data buffer, generally on a first-in, first-out (FIFO) basis. When the buffer is full, or when a buffer latency timer times out, the data is compressed and encoded and then sent to a receiving modem as a data packet, generally in accordance with the V.42 protocol. On receipt of the data packet, an error-correcting modem checks the entire data packet for errors, decompresses and decodes the data. Data is sent to a receive data buffer, and then ultimately transported to the receiving host system.
The general data transport method described above inherently adds a latency (or delay) factor to the transmitted data. That is, data is not transmitted from the sending modem until the transmit data buffer is full (or until a buffer latency timer times out) and the data is compressed. Data received at a receiving modem does not get transmitted to the receiving host system until the data is 1) checked for errors, 2) decompressed, and then 3) removed from the receive data buffer, which also generally operates on a FIFO basis.
While such buffered signal transport is suitable in many situations, some applications require faster transport, e.g., computer games that require "twitch", or rapid response, of players. For instance, in a fighting game where two players use separate computers at remote locations with respect to each other but both view the same images on their respective screens, player-one may punch, requiring player-two to block the punch. The timing of punch-block moves is critical to game play. If player-one's punch signal takes too long (or has too much latency) in reaching player-two, player-two may not have adequate time to react with a block. Essentially, too much latency in such "twitch" signals causes games to become disassociated and unplayable.
To minimize this latency problem, some applications recommend using non-error-correcting modems. While non-error-correcting modems will have a lower latency because error-correcting functions are eliminated, these modems still buffer the data at both the sending and receiving ends, continuing to cause unacceptable latency of "twitch" signals. Further, use of non-error-correcting modems is disadvantageous because errors due to noise on the lines will not be corrected and thus signals may be distorted or even nonsensical.
In extreme cases to eliminate latency, some modem designers have gone so far as to develop modems outside of any established standard protocol (i.e., no V.x protocol is utilized). While such modems may avoid "twitch" signal latency, gains in "twitch" transport are made at the expense of modem compatibility. In other words, signal transport without use of a standard protocol requires the same type of modem, i.e., the same modem brand and/or model, at both the sending and receiving ends. Such compatibility sacrifice is generally unacceptable.
Therefore, it is desirable to develop a modem that can quickly transport "twitch", or low latency, signals and still operate within an established error-correcting protocol.